// url 模块提供用于网址处理和解析的实用工具。

/*
  url的组成:
    protocol: 协议  http/https/ftp/tcp/file/ws/wss
    auth: 权限 user:password
    host: 主机
      hostname: 主机名
      port: 端口号  http 80 https 443
    path: 路径
      pathname: 路径名  /a/b/c
      search: 查询字符串  ?a=3&b=4
    hash: 哈希  #abc
*/

const str = "https://sub.example.com:8080/p/a/t/h?query=string&a=3&b=4";

// const parse = (url) => {
//   const query = url.split("?")[1]; // query=string&a=3&b=4
//   const arr = query.split("&"); // ["query=string", "a=3", "b=4"]
//   const obj = {};
//   arr.forEach((item) => {
//     const [key, value] = item.split("=");
//     obj[key] = value;
//   });
//   return obj;
// };

// console.log(parse(str));

// const url = require("url");
// parse方法是将url字符串转成对象形式
// const obj = url.parse(str);
// console.log(obj);
// const str2 = url.format(obj);
// console.log(str2);

const obj = new URL(str);
const params = obj.searchParams; // 不是对象
console.log(params.get("a"));
